{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [],
   "source": [
    "import numpy as np\n",
    "import matplotlib.pyplot as plt\n",
    "import argparse\n",
    "import os\n",
    "import cv2\n",
    "import h5py\n",
    "from sklearn import preprocessing\n",
    "from tensorflow.keras import backend as K\n",
    "from tensorflow.keras.models import Model, load_model, model_from_json\n",
    "from PIL import Image\n",
    "import imagehash\n",
    "import csv\n",
    "from sklearn.metrics import classification_report"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [],
   "source": [
    "data = [[1, 1, 1, 1, 1, 0, 1, 1, 0, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 1, 0, 1, 1, 0, 1, 0, 1, 1, 1, 0, 1, 1, 1, 1, 1, 0, 1, 1, 0, 1, 0, 0, 0, 1, 0, 0, 1, 1, 0, 1, 0, 1, 1, 1, 1, 0, 1, 1, 0, 0, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 0, 0, 1, 0, 1, 0, 1, 1, 1, 0, 1, 0, 1, 1, 1, 0, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 0, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [0, 1, 0, 1, 1, 0, 0, 1, 1, 0, 1, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 1, 1, 0, 1, 1, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 0, 0, 0, 1, 0, 1, 0, 1, 1, 0, 0, 0, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [],
   "source": [
    "data = np.array(data)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(6, 75)"
      ]
     },
     "execution_count": 6,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "data.shape"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "70"
      ]
     },
     "execution_count": 8,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "data[0].sum()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "70\n",
      "69\n",
      "47\n",
      "61\n",
      "60\n",
      "61\n"
     ]
    }
   ],
   "source": [
    "for i in range(0, 6):\n",
    "    print(data[i].sum())"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "算混淆矩阵"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": [
    "BIT——ResNet生成的杀死率不均衡，查看原始图像和生成测试用例的混淆矩阵发现，有区别。"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": [
    "origin_model = load_model('./data/neural_networks/BIT_RESNET50.h5')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": [
    "deepsmartfuzz_path = \"./output/grad/DenseNet121/Car/generated_samples\"\n",
    "deepsmartfuzz_new_inputs = np.load(os.path.join(deepsmartfuzz_path, 'new_inputs.npy'))\n",
    "deepsmartfuzz_origin_inputs = np.load(os.path.join(deepsmartfuzz_path, 'orgin_inputs.npy'))\n",
    "deepsmartfuzz_new_outputs = np.load(os.path.join(deepsmartfuzz_path, 'new_outputs.npy'))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": [
    "deepsmartfuzz_perdict = origin_model(deepsmartfuzz_new_inputs)\n",
    "deepsmartfuzz_perdict_arg = np.argmax(deepsmartfuzz_perdict, axis=1)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": [
    "deepsmartfuzz_new_outputs_arg = np.argmax(deepsmartfuzz_new_outputs, axis=1)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": [
    "report = classification_report(deepsmartfuzz_new_outputs_arg,deepsmartfuzz_perdict_arg)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": [
    "print(report)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "画杀死率图"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [],
   "source": [
    "kill_per_class = [16,41,6,13,34,31]\n",
    "kill_per_class_2 = [13,39,6,10,30,31]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [],
   "source": [
    "kill_per_class = np.array(kill_per_class)\n",
    "kill_per_class_2 = np.array(kill_per_class_2)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "array([1, 2, 3, 4, 5, 6])"
      ]
     },
     "execution_count": 6,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "kill_per_index = np.arange(1, 7)\n",
    "kill_per_index"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "['SUV', '轿车', '微型客车', '小型货车', '公共汽车', '卡车']"
      ]
     },
     "execution_count": 7,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# 公共汽车、微型客车、小型货车、轿车、SUV和卡车。每种车型的车辆数量分别为558辆、883辆、476辆、5922辆、1392辆和822辆。\n",
    "class_name = ['SUV', 'Sedan', 'Microbus', 'Minivan', 'Bus', 'Truck']\n",
    "[1392, 5922, 883, 476, 558, 822]\n",
    "['SUV','轿车','微型客车','小型货车','公共汽车','卡车']"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "No handles with labels found to put in legend.\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.plot(kill_per_index, kill_per_class)\n",
    "plt.legend()\n",
    "# plt.xticks(kill_per_index,kill_per_index)\n",
    "plt.xlim(1, 6) # x轴范围\n",
    "plt.ylim(0, 50) # y轴范围\n",
    "plt.title('simple-0.47')\n",
    "plt.xlabel('kill_per_index')\n",
    "plt.ylabel('kill_per_class')\n",
    "plt.xticks(range(1,7,1), class_name)\n",
    "plt.grid(linestyle='--') # figure中的网格线\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "No handles with labels found to put in legend.\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.plot(kill_per_index, kill_per_class_2)\n",
    "plt.legend()\n",
    "# plt.xticks(kill_per_index,kill_per_index)\n",
    "plt.xlim(1, 6) # x轴范围\n",
    "plt.ylim(0, 50) # y轴范围\n",
    "plt.title('simple-0.92')\n",
    "plt.xlabel('kill_per_index')\n",
    "plt.ylabel('kill_per_class_2')\n",
    "plt.xticks(range(1,7,1), class_name)\n",
    "plt.grid(linestyle='--') # figure中的网格线\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "grad",
   "language": "python",
   "name": "grad"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.6.15"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
